var message: string = "Hello World!";
console.log(message);

const a55: number = 5;
const b55: number = 5;
const c55: number = a55 + b55;
console.log(c55);

const number = 12
const str = "apple"
const bool = false
const nul = null
const und = undefined
const arrlist = [1,2,3]
const objlist = [{
    name: "apple",
    age: 12
},
    {
        name: "banana",
        age: 13
    }
]
console.log(str);
console.log(bool)
console.log(objlist);
console.log(nul)
console.log(und)
console.log(number)
console.log(arrlist)
console.log("hello")

interface User{
    id: number,
    name: string,
    age: number
}

interface Person {
    name: string;
    age: number;
    greet(): void;
}

class Student implements Person {
    constructor(public name: string, public age: number) {}

    greet() {
        console.log(`Hello, my name is ${this.name}`);
    }
}

const student = new Student("John", 20);
student.greet();

function gerat(name: String):String{
    return "Hello " + name;
}
const s: String  = gerat("John");
console.log(s);
console.log(gerat("John"));

function gerat2(name: String, age: number):String{
    return "Hello " + name + " " + age;
}
function add(age: number):String{
    return "Hello "  + age +" years old!";
}
console.log(add(233));